// utils/base64ToTempFilePath.js

/**
 * 将Base64字符串保存为临时图片文件
 * @param {string} base64Str - 标准Base64图片字符串（可带data:image前缀）
 * @returns {Promise<string>} 临时文件路径
 */
function base64ToTempFilePath(base64Str) {
  return new Promise((resolve, reject) => {
    // 提取纯Base64数据（去除可能的头部信息，fs.writeFile不需要头部信息）
    const base64Data = base64Str.split(',')[1] || base64Str;
    
    // 获取文件系统管理器
    const fs = wx.getFileSystemManager();
    
    // 生成临时文件名（时间戳+随机数防重复）
    const filePath = `${wx.env.USER_DATA_PATH}/${Date.now()}_${Math.floor(Math.random() * 10000)}.jpg`;
    
    // 将Base64写入文件
    fs.writeFile({
      filePath: filePath,
      data: base64Data,
      encoding: 'base64',
      success: () => resolve(filePath),
      fail: (err) => reject('写入失败：' + err.errMsg)
    });
  });
}

module.exports = {
  base64ToTempFilePath
}